Ultrasound scanning devices obtain image data by emitting a number of ultrasonic beams at a target, and then detecting the reflections of those waves. Based on these reflections, the ultrasound device generates data that will show an image of the target. Because this data results from an ultrasound scan, it is sometimes referred to as scan data.
In practice, a typical ultrasound device will have an emitter device, often hand-held, that contains a number of ultrasonic beam emitters. These ultrasonic beam emitters will each transmit an ultrasonic beam from essentially the same starting point, with each beam fanning out at a slightly different angle. In this way, the beams will cover the entire target area.
As a result of this engineering design choice, the image data that is gathered from the reflected ultrasonic waves is most easily stored using polar coordinates. In particular, each data point corresponding to an ultrasonic reflection is identified by an angle corresponding to the angle of the reflected beam, a distance (i.e., radius) of the reflection, and pixel data.
However, standard video display devices, such as cathode ray tubes (CRTs), liquid crystal displays (LCDs), plasma displays, or the like, are typically laid out with a set of display pixels using x-y coordinates (i.e., Cartesian coordinates). In other words, the display devices usually have their display pixels set up in an array of parallel rows and parallel columns defined using x-y coordinates. Images are provided to the display device by providing image data in a similar array that corresponds to the pixel array of the display device. This can be accomplished using a raster scan (e.g., in a CRT), individual addressing of pixel display elements (e.g., in an LCD), or any other suitable method.
When using such a display element in an ultrasound system, it is therefore necessary for the system to convert the received ultrasound image data from polar coordinates into x-y coordinates so that it will be suitable for desired display device. This is typically achieved by performing a mathematical conversion process on the polar coordinate data to approximate x-y coordinate data that corresponds to the polar coordinate data.
Furthermore, because an ultrasound device must display its images in real-time, it is necessary for this conversion process to likewise be performed in real-time. This means that whatever processor is performing the conversion process must be able to access a stored image frame polar coordinate data quickly enough to achieve real-time conversion into x-y coordinate data. As a result, the polar coordinate data must typically be stored in a fast-access memory element, such as an internal memory element associated with the processor, e.g., an internal CPU cache, such as a level 1 cache or a level 2 cache. In one embodiment, this can be implemented using a static random access memory (SRAM) element.
However, the expense of a memory generally increases along with its speed and its size. This means that a memory both large enough to hold the entire polar coordinate data set for a given ultrasound image frame and with a fast enough access time or latency to allow real-time conversion to x-y coordinate data would be comparatively expensive
It would therefore be desirable to provide a way to initially store the polar coordinate data in a cheaper, slower memory, and switch it to a faster memory only as needed for data conversion.